<!DOCTYPE HTML>
<html>
<head>
<title>FileGetAttrib | AutoHotkey v1</title>
<meta name="description" content="The FileGetAttrib command reports whether a file or folder is read-only, hidden, etc." />
<meta http-equiv="content-type" content="text/html; charset=utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<link href="../static/theme.css" rel="stylesheet" type="text/css" />
<script src="../static/content.js" type="text/javascript"></script>
</head>
<body>

<h1>FileGetAttrib</h1>

<p>报告文件或文件夹是否为只读, 隐藏等.</p>

<pre class="Syntax"><span class="func">FileGetAttrib</span>, OutputVar <span class="optional">, Filename</span></pre>

<h2 id="Parameters">参数</h2>
<dl>

  <dt>OutputVar</dt>
  <dd id="attrib">
    <p>用来存储文件或文件夹属性的输出变量的名称. 这个字符串是 <code>RASHNDOCT</code> 的子集, 其中每个字母的含义如下:</p></dd>
    <ul>
      <li>R = 只读</li>
      <li>A = 存档</li>
      <li>S = 系统</li>
      <li>H = 隐藏</li>
      <li>N = 普通</li>
      <li>D = 目录</li>
      <li>O = 离线</li>
      <li>C = 压缩</li>
      <li>T = 临时</li>
      <li>X = 无属性</li>
   </ul>
 </dd>

  <dt>Filename</dt>
  <dd><p>如果为空或省略, 则使用最内层<a href="LoopFile.htm">文件循环</a>的当前文件. 否则, 请指定目标文件的名称, 如果未指定绝对路径, 则假定在 <a href="../Variables.htm#WorkingDir">%A_WorkingDir%</a> 中. 与 <a href="FileExist.htm">FileExist()</a> 不同, 这必须是一个真正的文件名, 而不是一个模式.</p></dd>

</dl>

<h2 id="Error_Handling">错误处理</h2>
<p><span class="ver">[v1.1.04+]</span>: 此命令失败时会抛出异常. 想了解更多信息, 请参阅<a href="Catch.htm#RuntimeErrors">运行时错误</a>.</p>
<p>如果遇到问题则 <a href="../misc/ErrorLevel.htm">ErrorLevel</a> 被置为 1, 否则为 0.</p>
<p><a href="../Variables.htm#LastError">A_LastError</a> 被设置为操作系统 GetLastError() 函数返回的结果.</p>

<h2 id="Remarks">备注</h2>
<p>要检查检索的字符串中是否存在特定属性, 请参阅下面的<a href="#ExIf">示例 #2</a>.</p>
<p>相关提示, 要获取 8.3 格式的短文件名, 请参照此例:</p>
<pre><a href="LoopFile.htm">Loop</a>, C:\My Documents\Address List.txt
    ShortPathName := A_LoopFileShortPath  <em>; 将产生类似于 C:\MYDOCU~1\ADDRES~1.txt 的路径</em></pre>
<p>用类似的方法可以获取与 8.3 短名称对应的长名称.</p>

<h2 id="Related">相关</h2>
<p><a href="FileExist.htm">FileExist()</a>, <a href="FileSetAttrib.htm">FileSetAttrib</a>, <a href="FileGetTime.htm">FileGetTime</a>, <a href="FileSetTime.htm">FileSetTime</a>, <a href="FileGetSize.htm">FileGetSize</a>, <a href="FileGetVersion.htm">FileGetVersion</a>, <a href="LoopFile.htm">文件循环</a></p>

<h2 id="Examples">示例</h2>
<div class="ex" id="ExBasic">
<p><a class="ex_number" href="#ExBasic"></a> 存储一个目录的属性字母到 <var>OutputVar</var> 中. 注意, 现有的目录总是有属性字母 D.</p>
<pre>FileGetAttrib, OutputVar, C:\New Folder</pre>
</div>

<div class="ex" id="ExIf">
<p><a class="ex_number" href="#ExIf"></a> 检查检索的字符串中是否存在 Hidden 属性.</p>
<pre>FileGetAttrib, Attributes, C:\My File.txt
if InStr(Attributes, "H")
    MsgBox The file is hidden.</pre>
</div>

</body>
</html>